#pragma once
#include "atltime.h"

#define EVENT_TYPE_SCHEDULE 1
#define EVENT_TYPE_TIMER 2

#define NOTIFY_TYPE_TRAY 1
#define NOTIFY_TYPE_MSGBOX 2

#define USE_DAY_SUN 1
#define USE_DAY_MON 2
#define USE_DAY_TUE 4
#define USE_DAY_WED 8
#define USE_DAY_THU 16
#define USE_DAY_FRI 32
#define USE_DAY_SAT 64

// CEventParams command target

class CEventParams : public CObject
{
	DECLARE_SERIAL(CEventParams)

public:
	CEventParams();
	virtual ~CEventParams();
private:
	CString m_strName;
	CString m_strMessage;
	int m_iType;
	CTime m_tTime;
	CTimeSpan m_tsResolution;
	BYTE m_byActiveDays;
	bool m_bIsActive;
	bool m_bLaunch;
	int m_iSoundID;
public:
	CString Name(void) const;
	void Name(const CString& strName);
	CString Message(void) const;
	void Message(const CString& strMsg);
	int EventType(void) const;
	void EventType(const int iType);
	CTime Time(void) const;
	void Time(const CTime& tTime);
	CTimeSpan TimeSpan(void) const;
	void TimeSpan(const CTimeSpan& tsRes);
	BYTE ActiveDays(void) const;
	void ActiveDays(const BYTE byActiveDays);
	bool Active(void) const;
	void Active(const bool bActive);
	int SoundID(void) const;
	void SoundID(const int iSoundID);
	bool GetLaunchFlag(void) const;
	void SetLaunchFlag(const bool bLaunch);

	void Launch(void);
	virtual void Serialize(CArchive& ar);
};


